package com.yy.wga.goods.service.entity.pojo;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yy.wga.common.mysql.dto.BaseEntity;
import com.yy.wga.goods.service.typeHandler.ListStringTypeHandler;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.List;

/**
 * 升级礼包商品信息(GoodsUpGrade)表实体类
 *
 * @author guochao
 * @since 2024-12-23 23:01:53
 */
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TableName(value = "goods_up_grade", autoResultMap = true)
public class GoodsUpGradeDO extends BaseEntity {

    /**
     * 标题
     */
    private String title;

    /**
     * 副标题
     */
    private String subTitle;

    /**
     * 主图列表
     */
    @TableField(value = "head_img", typeHandler = ListStringTypeHandler.class)
    private List<String> headImg;

    /**
     * 详情图片
     */
    @TableField(value = "detail_img", typeHandler = ListStringTypeHandler.class)
    private List<String> detailImg;

    /**
     * 商品状态, 1上架 2下架
     */
    private String status;

    /**
     * 原价（单位：分）
     */
    private Integer originPrice;

    /**
     * 最终价（单位：分）
     */
    private Integer finalPrice;

    /**
     * 享客复购最终价（单位：分）
     */
    private Integer shareRepurchaseFinalPrice;

    /**
     * 服务商复购最终价（单位：分）
     */
    private Integer serverRepurchaseFinalPrice;

    /**
     * 升级等级 0.普通用户 1.享客 2.服务商
     */
    private Integer upGrade;

    /**
     * 升级等级级别
     */
    private Integer upGradeLevel;

    /**
     * 奖励类型
     */
    private Integer upAwardType;

    /**
     * 奖励值，金额以分为单位
     */
    private Integer upAwardValue;

    /**
     * 佣金，单位分
     */
    private Integer commissionValue;

    /**
     * 享客复购佣金，单位分
     */
    private Integer shareRepurchaseCommissionValue;

    /**
     * 服务商复购佣金，单位分
     */
    private Integer serverRepurchaseCommissionValue;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 库存，sku库存和
     */
    private Integer stockNum;

    /**
     * 购买者最小等级 0.普通用户 1.享客 2.服务商
     */
    private Integer purchaserMinGrade;

    /**
     * 购买者最小等级级别
     */
    private Integer purchaserMinLevel;

}
